﻿using Framework.Common;
using Framework.Common.Paged;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using YouTravel.DomainModels;
using YouTravel.QueryModels;
using YouTravel.ViewModels;

namespace YouTravel.DomainService
{
    /// <summary>
    /// 
    /// </summary>
    public interface IContractService
    {
		/// <summary>
		/// 专线列表页面 Pwp 2015-09-21
		/// </summary>
		/// <param name="queryCond">专线查询集合</param>
		/// <returns></returns>
		CustomPagedList<ContractListViewModel> GetBranchList(PagedParam<SpecialContractQuery> queryCond);

		/// <summary>
		/// 续约专线合同 Pwp 2015-09-22
		/// </summary>
		/// <param name="_branchview">专线创建集合</param>
		void RenewalContract(ContractViewModel contractview);

		/// <summary>
		/// 供应商列表页面 Pwp 2015-09-21
		/// </summary>
		/// <param name="queryCond">专线查询集合</param>
		/// <returns></returns>
		CustomPagedList<ContractListViewModel> GetSellerSupplierList(PagedParam<SpecialContractQuery> queryCond);

		/// <summary>
		/// 废弃/恢复合同 Pwp 2015-09-23
		/// </summary>
		/// <param name="sellersuppliermodel"></param>
		/// <returns></returns>
		void AbandonedContract(SellerSupplier sellersuppliermodel);

		/// <summary>
		/// 创建供应商合同 Pwp 2015-09-23
		/// </summary>
		/// <param name="contractview"></param>
		/// <returns></returns>
		void AddContract(ContractViewModel contractview);
    }
}
